Time-series analytics of network telemetry information is a field of active study. With expanding computer networks and increasing speed, volume, and types of data traffic on the computer networks, there is demand to collect, store, and analyze metrics information from the computer networks in order to identify trends related to network conditions and traffic patterns. The analysis can help network administrators improve operational efficiency of the networks and improve the user experience of users on the networks.
Computer networks are complex entities that comprise many interconnected devices with different traffic flows at any given point in time. A traffic flow represents data traffic that originates from a source, traverses a path along the network, and terminates at a destination. A traffic flow may also be bi-directional.
Network topology, device parameters, and link states continuously change throughout the network. With this data, various types of network analysis can be performed, such as determining devices that are getting over-used in a network in a given time period, links that go down too often during peak hours, paths that are used more than others during specific times of the year, optimized routes between any two points in the network, and so on. The set of active flows at a given time may be used to identify active users in a network or sets of resources that traffic is transiting through during the given time period.
Three different data retrieval abilities are used to perform these different types of analysis: retrieving a snapshot describing the state of a computer network at any given time, retrieving data from a particular period of time, and traversing data to identify and correlate conditions across both spatial and temporal domains. Additionally, to process a large amount of network telemetry information, it is necessary to store all the relevant data in an efficient manner.
However, previous data storage solutions are unable to address all three of data retrieval abilities simultaneously. For example, typical data storage solutions that enable snapshot retrieval are unable to provide time traversal functionalities. A typical snapshot storage and retrieval system stores snapshots in association with different points in time. To view data from a particular point in time, the snapshot associated with the particular point in time is retrieved. If modifications were made between two points in time but no snapshot was stored, then the modifications are not reflected in the snapshots. Furthermore, the snapshot storage and retrieval system does not allow retrieving data across a period of time, or correlating data from different points in time. Thus, techniques for efficient storage of telemetry information that provide greater data retrieval and processing capabilities are desired.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.